
 1000  ; SAVES.WINDOWS.80
 1010  *-AAL APRIL 85 P 16-------------
 1020        .OR $2F5
 1030        .TF B.WINDOWS.80
 1040  *-------------------------------
 1050  TOP       .EQ $00  $0-$6 DATA
 1060  BOTTOM    .EQ $01  
 1070  LEFT      .EQ $02
 1080  RIGHT     .EQ $03
 1090  WIDTH     .EQ $04
 1100  LINE      .EQ $05
 1110  DIREC     .EQ $06
 1120  *
 1130  B1        .EQ $18,19   TEXT PNTR
 1140  B2        .EQ $1A,1B   BUFR PNTR
 1150  B3        .EQ $1C,1D   BUFR PNTR
 1160  WNDLFT    .EQ $20
 1170  WNDWDTH   .EQ $21
 1180  WNDTOP    .EQ $22
 1190  WNDBTM    .EQ $23
 1200  BASL      .EQ $28
 1210  BASH      .EQ $29
 1220  *-------------------------------
 1230  AMPERV    .EQ $3F5
 1240  PAG2OFF   .EQ $C054  READ MRBRD
 1250  PAG2ONN   .EQ $C055  READ AUXBRD
 1260  LCROM     .EQ $C082
 1270  LCRAM1    .EQ $C08B
 1280  GETBYTE   .EQ $E6F8
 1290  COMBYTE   .EQ $E74C
 1300  BASCALC   .EQ $FBC1
 1310  HOME      .EQ $FC58
 1320  *-------------------------------
 1330  SETUP
 1340        LDA #MOVE.WINDOW
 1350        STA AMPERV+1
 1360        LDA /MOVE.WINDOW
 1370        STA AMPERV+2
 1380        RTS
 1390  *-------------------------------
 1400  MOVE.WINDOW
 1410        JSR GETBYTE
 1420        STX TOP
 1430        STX LINE
 1440        JSR COMBYTE
 1450        STX BOTTOM
 1460        JSR COMBYTE
 1470        STX LEFT
 1480        JSR COMBYTE
 1490        STX RIGHT
 1500        INX
 1510        SEC
 1520        TXA
 1530        SBC LEFT
 1540        STA WIDTH
 1550        JSR COMBYTE
 1560        DEX
 1570        STX DIREC
 1580  *-------------------------------
 1590  *-------------------------------
 1600  MOVE.LINE
 1610        LDA LINE
 1620        JSR BASCALC
 1630        LDA BASH
 1640        STA B1+1
 1650        EOR #$D4
 1660        STA B2+1
 1670        CLC
 1680        ADC #$04      2ND BUFR
 1690        STA B3+1
 1700        LDA BASL
 1710        STA B1
 1720        STA B2
 1730        STA B3
 1740        LDA LCRAM1    ENABLE LANG
 1750        LDA LCRAM1    CARD R/W
 1760  *--MOVE THE LINE SEGMENT--------
 1770        LDA RIGHT
 1780        LSR           A/2 + EVN/ODD
 1790        TAY           TXT SCRN PNTR
 1800        LDX DIREC
 1810        BNE .3
 1820  *--MOVE IT UP-------------------
 1830        LDX WIDTH     DOWN COUNTER
 1840        BCC .2
 1850  .1    LDA (B1),Y    DO ODD COLS
 1860        STA (B2),Y
 1870        DEX
 1880        BMI .6 
 1890  .2    LDA PAG2ONN   DO EVN COLS
 1900        LDA (B1),Y
 1910        STA (B3),Y
 1920        LDA PAG2OFF
 1930        DEY
 1940        DEX
 1950        BPL .1
 1960        BMI .6 
 1970  *--MOVE IT DOWN-----------------
 1980  .3    LDX WIDTH
 1990        BCC .5
 2000  .4    LDA (B2),Y    DO ODD COLS
 2010        STA (B1),Y
 2020        DEX
 2030        BMI .6 
 2040  .5    LDA PAG2ONN   DO EVN COLS
 2050        LDA (B3),Y
 2060        STA (B1),Y
 2070        LDA PAG2OFF
 2080        DEY
 2090        DEX
 2100        BPL .4
 2110  *--NEXT LINE--------------------
 2120  .6    INC LINE
 2130        LDA LCROM     RESTORE ROM
 2140        LDA BOTTOM
 2150        CMP LINE
 2160        BCS MOVE.LINE
 2170  *--IF CLEARING, SET WINDOW------
 2180        LDA DIREC
 2190        BNE .7
 2200        LDX LEFT
 2210        STX WNDLFT
 2220        LDX WIDTH
 2230        DEX
 2240        STX WNDWDTH
 2250        LDX TOP
 2260        INX
 2270        STX WNDTOP
 2280        LDX BOTTOM
 2290        STX WNDBTM
 2300        JSR HOME
 2310  .7    RTS
 2320  *-------------------------------
 2330  ZZEND .EQ *

